<para>
There is a system repository located at
<filename>/ostree/repo</filename>. If no repository
- is specified, the <command>ostree</command> as well
- as many API calls will use it by default.
+ is specified -- either by a command-line option or the
+ <envar>OSTREE_REPO</envar> environment variable --
+ the <command>ostree</command> as well as many API
+ calls will use it by default.
</para>
</refsect1>
*
* If the current working directory appears to be an OSTree
* repository, create a new #OstreeRepo object for accessing it.
- * Otherwise, use the default system repository located at
+ * Otherwise use the path in the OSTREE_REPO environment variable
+ * (if defined) or else the default system repository located at
* /ostree/repo.
*
* Returns: (transfer full): An accessor object for an OSTree repository located at /ostree/repo
}
else
{
- gs_unref_object GFile *default_repo_path = get_default_repo_path ();
- return ostree_repo_new (default_repo_path);
+ const char *envvar = g_getenv ("OSTREE_REPO");
+ gs_unref_object GFile *repo_path = NULL;
+
+ if (envvar == NULL || *envvar == '\0')
+ repo_path = get_default_repo_path ();
+ else
+ repo_path = g_file_new_for_path (envvar);
+
+ return ostree_repo_new (repo_path);
}
}